Option for independently adjusting the timing of the forward and reverse direction of bi-directional digital signals

ABSTRACT

It is difficult to optimize the timing of the forward and reverse direction for high frequency bidirectional digital signals. The invention improves the adjustability of the timing by the emission of an additional clock pulse, together with the output clock pulse for the receiver and the feedback clock pulse for the PLL. Said additional clock pulse is re-circulated using a delay line and is used to set the clock pulse of the reverse direction signals.

CROSS REFERENCE, TO RELATED APPLICATIONS

[0001] This application is the US National Stage of International Application No. PCT/EP02/09694, filed Aug. 30, 2002 and claims the benefit thereof. The International Application claims the benefits of European application No. 01121401.2 EP filed Sep. 6, 2001, both of the applications are incorporated by reference herein in their entirety.

FIELD OF INVENTION

[0002] The invention relates to a delayed clocking of signals in the reverse direction without strobe signals also being supplied. Additionally, the invention improves the adjustability of the timing by the emission of an additional clock pulse, together with the output clock pulse for the receiver and the feedback clock pulse for the PLL.

BACKGROUND OF INVENTION

[0003] The performance of digital systems is heavily dependent on the frequency. On the other hand, the higher the frequency, the shorter is the time remaining to convey digital signals reliably from a driver via a conductor track to the receivers. Limiting factors are the clock-to-output time (tco), the run time on the board (trun), the setup/hold time (tsetup/thold) of the receiver, output and input skew (skew of the transmitters and receivers) and clock skew or jitter (tskew).

[0004]FIG. 1 shows the timing of a digital signal at the output of the driver of a transmitter and at the input of the receiver, the diagram illustrating the time effect of the factors mentioned.

[0005] The setup time requirement determines for how many ns before the clock edge a signal to be clocked in has to be stable. The hold time requirement determines for how long after a clock edge the signal has to remain stable. Thus, if the position of the times of clock and signal with respect to each other is varied, this has a positive effect in respect of one requirement, but a negative effect in respect of the other requirement. The run time of clock and signals must be optimized in such a way that even in extreme environmental conditions positive margins remain and no timing violations arise anywhere. The tradeoff determines the maximum possible frequency and therefore the performance of the system or imposes constraints in the architecture.

[0006] With bidirectional signals, the optimization is even more difficult. If, for example, a relatively large run time arises in any case due to a great distance between transmitter and receiver, complying with the hold time is no problem.

[0007] On the other hand this probably gives rise to a problem with regard to the setup time. With unidirectional signals a means of optimizing could be to allow the clock of the receivers to trail behind somewhat relative to the clock of the transmitter. In this way more time is gained for setup and the amply available hold time is reduced. The clock period is lengthened somewhat for this direction.

[0008] With bidirectional signals this is impossible. In the opposite direction the receiver clock would then in fact be leading the transmitter clock. The clock period would be shortened. Moreover this would happen in spite of the fact that the distance for the signals is actually the same. Each change in favor of one direction is detrimental to the timing of the other direction.

[0009] For simple digital circuits, no solution at all was found for this problem. Generally measures are taken to ensure that the two transmitters/receivers involved have as little clock skew as possible. In this way the timing budget for both direction is the same. An optimization in favor of one direction was possible only if the two devices differed in the setup/hold or clock-to-output values according to the data sheet.

[0010] Typically, a table is produced which lists all the timing parameters to be taken into account for each signal and for both directions and calculates a margin or a violation. signal tskew tco, tco, trun, hold setup name chip min max trun, min max tsetup thold margin margin

[0011] Table 1: Setup and hold time margin calculation (for one direction; another table for reverse direction)

hold margin=tco,min+trun,min−tskew−thold

setup margin=7.5 ns−tco,max−trun,max−tsetup−tskew

(clock period=7.5 ns)

[0012] In special digital systems (e.g. RAMBUS or DDR SDRAM), measures are taken to ensure that the signals are not clocked in using the centrally distributed clock, but are clocked in with a delay by means of the clock signals also supplied, which are known as strobe signals. This presupposes that the devices involved also supply these strobe signals. Simpler circuits do not have this possibility.

[0013] An already partly common variant for minimizing the clock skew between transmitter and receiver, which is shown in FIG. 2, uses a PLL in the transmitter device (e.g. SDRAM controller). In this arrangement, clock and signals for the SDRAMs come from the same chip. An additional clock output is looped back again to the PLL of the transmitter and in fact has the same physical length as the SDRAM clocks. The PLL transmits this feedback clock earlier in line with the board run time, so that in this way it will then arrive in phase with the reference clock at the PLL input of the SDRAM controller. Because the clocks have the same run time to the SDRAM these are also automatically in phase at their receivers.

SUMMARY OF INVENTION

[0014] The invention enables a delayed clocking in of the signals of the reverse direction without strobe signals also being supplied. By means of suitable delay lines on the board it is possible to set the signal clock-in timing for forward and reverse direction independently of each other. The timing of the entire bus system can also be adjusted. This enables the maximum frequency to be increased or the bus frequency to be operated with fewer restrictions. The design risk for the timing is considerably reduced because it can still be changed on the finished board by insertion of other delay lines.

[0015] The invention is based on the above described PLL clock system for minimizing clock skew. An important idea of the invention consists in the transmission of a further clock together with the output clock for the receivers and the feedback clock for the PLL. This further clock is looped back via a delay line and used for clocking in the signals in the reverse direction. Delay lines are also provided in the feedback clock of the PLL and in the receiver clock path. By insertion of different delay lines the times of clocking out and clocking in at the transmitter and the clock of the receivers can be set arbitrarily within limits (see FIG. 3).

[0016] Furthermore, the timing can be improved and external influences minimized by coupling the output signals to the output clock. This coupling is achieved as follows: the output data register is clocked not with the normal system clock for the core of the ASIC, but with the clock which is derived from the output clock of the PLL (see FIG. 4). Finally, in order to minimize external influences, buffer type and placing of clock and signal output buffers are implemented identically.

BRIEF DESCRIPTION OF DRAWINGS

[0017]FIG. 1. shows the timing of a digital signal at the output at the output of the driver of a transmitter and at the input of the receiver,

[0018]FIG. 2. shows an already partly common variant for minimizing the clock skew between transmitter and receiver using a PLL in the transmitter device,

[0019]FIG. 3. shows a schematic circuit diagram of a clock, and

[0020]FIG. 4. shows an SDRAM memory controller comprising an ASIC, 4×512 MB SDRAM DIMMs.

DETAILED DESCRIPTION OF INVENTION

[0021] The principle presented is realized by way of example in an SDRAM memory controller comprising an ASIC, 4×5 12 MB SDRAM DIMMs (see FIG. 4).

[0022] If the delay lines are initially regarded as not present, then all the clock edges at the ASIC input and at the DIMMs are locked in phase (TO).

[0023] The clock of the DIMMs can be shifted by means of delay 1. An increase means that the DIMM clock is leading, which serves to comply with the hold time. Coupling the output signals to the output clock ensures there is an adequate budget for setup compliance.

[0024] The clocking in of the reverse direction signals can be delayed by means of delay 2. Because the clock-to-output time for SDRAMs is relatively high at 5.6 ns (the entire clock period only has 7.5 ns!), this is very necessary.

[0025] The entire clock system can be shifted forward by means of delay 3.

[0026] In addition to the schematic circuit diagram shown in (3), a PLL clock driver is also installed. This multiplies the output clock of the ASIC in order to obtain 16 clocks for the 4 DIMMs. In this case delay 1 is shifted into the feedback path in order to achieve a forward shift of the DIMM clocks (hold time problem was the determining factor here). The run time up to the PLL clock driver is balanced out with the run time of its feedback path. The run time from the PLL clock driver to the DIMMs is set equal to t_ext1, the run time of ASIC feedbacks and signals to the DIMM.

[0027] In this way it is possible, in spite of special requirements not present in the PC environment (4 DIMM slots with angled, widely spaced sockets due to low board form factor height of 3 cm), to implement a bus clock rate of 133 MHz with reliable timing and without performance penalties for the system.

[0028] Abbreviations used DIMM: Dual Inline Memory Module DRAM: Dynamic Random Access Memory SDRAM: Synchronous Dynamic Random Access Memory DDR SDRAM: Double Data Rate Synchronous Random Access Memory PLL: Phase Locked Loop SPLL: PLL for SDRAM Skew: Angled position, distortion Clock skew: Time difference arising due to run times of different lengths and/or due to different driver strengths or receiver loads. Clock skew causes some receiver registers to switch earlier/later than others. Output skew: The dispersion range of the tco times with related signals of the same type (buses) Input skew: The dispersion range of the input run times from the external pin to the receiver in the chip with buses 

1. A digital system, comprising: a processing device for processing data which is clocked via a first clock signal; a data output register for transmitting data over a data signal line to a further digital system; a data input register for receiving data via the data signal line; a PLL device which generates a second clock signal from the first clock signal; and a feedback loop of the PLL device that has the same run time as the data signal line, the second clock signal supplied as a clock signal to the further digital system via a system, comprising: a first clock line that supplies the second clock signal as a clock signal to the digital system, whereby the first clock line has a similar physical length as the data signal line and contains a delay device such that the run time over the first clock line can be varied; and a second clock line that supplies the second clock signal of the digital system as a clock signal, whereby the second clock line contains a delay device such that the run time over the second clock line can be varied.
 2. The digital system according to claim 1, wherein the feedback loop of the PLL device contains a delay device so that the run time of the feedback loop of the PLL device can be varied.
 3. The digital system according to claim 1, wherein the second clock line has the same physical length as the data signal line.
 4. The digital system according to claim 1, wherein the second clock signal is supplied as a clock signal to the data output register.
 5. The digital system according to claim 1, wherein the run times within the digital system and the buffer types of clock signals and data signals are identical.
 6. A digital system, comprising: a processing device for processing data which is clocked via a first clock signal; a data output register for transmitting data over a data line to a further digital system; a data input register for receiving data via the data line; a PLL device which generates a second clock signal from the first clock signal; a first delay device disposed in a first clock line between the digital system and the further digital system that enables the delivery of the second clock signal to the further digital system to be delayed by a first time interval; a second delay device disposed in a second clock line that enables the delivery of the second clock signal to the data input register of the further digital system to be delayed by a second time interval; and a third delay device disposed in the feedback loop of the PLL device that enables the second clock signal to be shifted to lead in time by a third time interval with respect to the first clock signal.
 7. The digital system according to claim 2, wherein the second clock line has the same physical length as the data signal line.
 8. The digital system according to claim 2, wherein the second clock signal is supplied as a clock signal to the data output register.
 9. The digital system according to claim 3, wherein the second clock signal is supplied as a clock signal to the data output register.
 10. The digital system according to claim 2, wherein the run times within the digital system and the buffer types of clock signals and data signals are kept identical. 